草庐IT

wpf - WPF 是用户界面设计的 future 吗?我现在应该学吗?

全部标签

javascript - 对 mean.js 全栈 javascript 应用程序的搜索引擎优化仍然是一个主要问题,应该如何处理?

我正在开发我的第一个全栈javascript应用程序,专门使用mean.js作为我的起点,我开始对搜索引擎优化(SEO)问题感到紧张和困惑。Google最近(大约在去年左右)为改进javascript抓取所做的努力是否使这不是一个问题,或者这是我在项目的规划和结构中需要考虑的事情?如果Google现在可以抓取AngularJS/Ajax繁重的应用程序,为什么我们会收到有关SEO问题解决方案的博客文章:http://blog.meanjs.org/post/78474995741/mean-seo是否需要这种解决方案。就SEO而言,这是否与服务器端呈现一样有效。hashbang(#!)u

javascript - 在 Angular 单元测试中应该如何处理运行 block ?

我的理解是,当您在Angular单元测试中加载模块时,runblock会被调用。我想如果你正在测试一个组件,你不会希望同时测试runblock,因为unit测试应该只是测试一个单元。是真的吗?如果是这样,有没有办法阻止runblock运行?我的研究使我认为答案是“否”,并且runblock总是在加载模块时运行,但也许有一种方法可以覆盖它。如果没有,我将如何测试runblock?运行block:functionrun(Auth,$cookies,$rootScope){$rootScope.user={};Auth.getCurrentUser();}Auth.getCurrentUse

javascript - 使用 redux 时应该如何在 react 组件中处理取消订阅?

在我的组件中,我有以下内容:componentWillMount:function(){this.unsubscribe=store.subscribe(function(){this.setState({message:store.getState().authentication.message});}.bind(this));},componentWillUnmount:function(){this.unsubscribe();},不调用取消订阅会导致以下错误:Warning:setState(...):Canonlyupdateamountedormountingcompon

javascript - JavaScript 应该抛出什么类型的异常?

在JavaScript中应该抛出什么类型的对象?我看到很多examples它抛出一个普通的旧string并且似乎有一个半标准的Error类型。我应该更喜欢其中之一吗? 最佳答案 Error对象和特定的错误对象(例如TypeError)在ECMAScript规范中已完全标准化。但是,大多数浏览器都提供这些对象的通用非标准属性。只要您的错误处理代码知道如何处理您抛出的对象,您就可以抛出任何您喜欢的东西,但是使用Error对象有以下优点:与处理原生代码抛出的错误保持一致,例如具有message属性,因此您不必编写不同的代码来处理原生错误和

javascript - 在 Javascript 中,我应该在加载新实例后删除上一级别的实例吗?

我制作了一个包含许多小关卡的HTML5游戏。当玩家到达门口时,会加载另一个关卡。当一个关卡正在加载时,它基本上只是将所有实例数组设置为[],然后通过创建事物的新实例将内容插入其中,例如:enemies=[]//thishaspreviouslybeenfullofpointersfromtheoldlevelfor(i=0;i但是,我注意到仅仅设置一个充满指向[]的指针的数组并不会真正删除实例!那么,javascript会自动执行此操作吗?还是我必须自己删除每个实例? 最佳答案 如果数组中的对象不再被任何地方引用,那么它们将被垃圾回

javascript - 我应该在异步函数中抛出错误还是返回被拒绝的 promise ?

这个问题在这里已经有了答案:ShouldanasyncAPIeverthrowsynchronously?(5个答案)关闭5年前。我正在履行AWSJSSDK提供的promise.当我创建一个包装AWSSDK的异步函数时,我正在做的事情的要点如下所示:module.exports.myCustomFunction=input=>{if(badInput){thrownewError('failed')//{//carryon}).catch(err=>{//dosomethingwiththeerror})有人找到我,他说我永远不应该在这些基于promise的函数中抛出错误。他们建议改为

javascript - 在 Observable 上使用 await 时,我应该使用什么来代替 toPromise()?

Thispage说“toPromise已被弃用!(RxJS5.5+)”但我最近一直在使用AngularFire2(当我只想要一个结果时),如下所示:constfoo=awaitthis.afs.doc(`docPath`).valueChanges().toPromise();我不应该这样做吗?如果不是,await替代方案是什么?更新:在下面的答案之后我改变了这个:constfoo=awaitthis.afs.doc(`docPath`).valueChanges().toPromise();...为此:constfoo=await(newPromise(resolve=>this.a

javascript - 为什么 JS hash/dict 中的 "key"部分应该是一个字符串?

在大多数JSON序列化器/反序列化器中,javascript字典/哈希数组中的“键”部分被写为字符串。使用字符串作为键与仅键入预期名称相比有什么好处?例如,假设我定义了两个对象k1和k2如下:vark1={a:1,b:2,c:3};//definenamenormallyvark2={"a":1,"b":2,"c":3};//definenamewithastring然后我运行了以下测试:alert(k1==k2);//false(ofcourse)alert(k1.a==k2.a);//truealert(k1["b"]==k2["b"]);//truealert(uneval(k1

javascript - 我应该等待 ajax 完成重定向页面吗?

我知道如何等待ajax完成,但是如果我要在某些ajax调用被触发后重定向页面,我应该等待它们完成后再重定向吗?重要吗? 最佳答案 如果您确信ajax调用会成功,那么一旦ajax调用发生,就您的服务器而言,重定向不会影响它。但不要忘记,客户端可能会失去连接或出现许多错误,因此您可能应该等待以确保调用成功。另一件要考虑的事情是您的ajax调用是否会影响您要重定向到的任何页面。在那种情况下,在重定向之前一定要等待。您不希望您的用户因为连接速度慢或您的服务器出现故障而被重定向到损坏的页面。 关于

javascript - 我应该使用 IIFE 还是 window onload 来初始化?

以下两个代码片段都有效:在js文件中使用IIFE:(functioninitialize(){txtInput=document.getElementById('txtInput');txtResult=document.getElementById('txtResult');txtInput.value="0";txtResult.value="0";}());在html文件中的窗口加载事件上调用initialize():window.addEventListener('load',initialize,false);是一种比另一种更好的方法吗?在性能方面还是其他方面?就目前而言,我